home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Applications 1996 May / SGI IRIX 6.2 Applications 1996 May.iso / dist / impr_dev.idb / usr / impressario / src / drivers / phandler / phandler.h.z / phandler.h
C/C++ Source or Header  |  1996-05-06  |  3KB  |  90 lines

  1. /**************************************************************************
  2.  *
  3.  *           Copyright (c)    1992 Silicon Graphics, Inc.
  4.  *            All Rights Reserved
  5.  *
  6.  *       THIS    IS UNPUBLISHED PROPRIETARY SOURCE CODE OF SGI
  7.  *
  8.  * The copyright notice above does not evidence any actual of intended
  9.  * publication of such source code, and is an unpublished work by Silicon
  10.  * Graphics, Inc. This material contains CONFIDENTIAL INFORMATION that is
  11.  * the property of Silicon Graphics, Inc. Any use, duplication or
  12.  * disclosure not specifically authorized by Silicon Graphics is strictly
  13.  * prohibited.
  14.  *
  15.  * RESTRICTED RIGHTS LEGEND:
  16.  *
  17.  * Use, duplication or disclosure by the Government is subject to
  18.  * restrictions as set forth in subdivision (c)(1)(ii) of the Rights in
  19.  * Technical Data and Computer Software clause at DFARS 52.227-7013,
  20.  * and/or in similar or successor clauses in the FAR, DOD or NASA FAR
  21.  * Supplement. Unpublished - rights reserved under the Copyright Laws of
  22.  * the United States. Contractor is SILICON GRAPHICS, INC., 2011 N.
  23.  * Shoreline Blvd., Mountain View, CA 94039-7311
  24.  **************************************************************************
  25.  *
  26.  * Description:
  27.  *    Printer driver for generic parallel printers on /dev/plp.
  28.  * 
  29.  * See Also:
  30.  *    phandler.c
  31.  * 
  32.  **************************************************************************/
  33.     
  34. #include <string.h>
  35. #include <errno.h>
  36. #include <stdio.h>
  37. #include <stdlib.h>
  38. #include <unistd.h>
  39. #include <fcntl.h>
  40. #include <sys/plp.h>
  41. #include <sys/file.h>
  42. #include <sys/types.h>
  43. #include <sys/prctl.h>
  44. #include <sys/wait.h>
  45. #include <signal.h>
  46. #include <getopt.h>
  47. #include <pod.h>
  48.  
  49. typedef  unsigned char    Boolean;
  50. #define  TRUE       1            /* pseudo-boolean value */
  51. #define  FALSE      0            /* pseudo-boolean value */
  52.  
  53. #define  COARSEDETAIL 1
  54. #define  MEDIUMDETAIL 2
  55. #define  FINEDETAIL   3
  56.  
  57. /* Exit codes on errors. */
  58. #define  NO_ERROR               0
  59. #define  UNKNOWN                1
  60. #define  BAD_ARG                2
  61. #define  BAD_POD_ACCESS         3
  62. #define  BAD_DEVICE_NAME        4
  63. #define  BAD_DEVICE_TYPE        5
  64. #define  BAD_STATUS_UPDATE      6
  65. #define  BAD_DEVICE_ACCESS      7
  66. #define  BAD_MEMORY_REFERENCE   8
  67. #define  BAD_MEMORY_ALLOC       9
  68. #define  BAD_DATA_FORMAT       10
  69. #define  BAD_DATA_HEADER       11
  70. #define  BAD_DATA_SHORT_FILE   12
  71. #define  BAD_CODE_SHORT_FILE   13
  72. #define  BAD_DATA_FILE         14
  73. #define  BAD_TRANSMISSION      15
  74. #define  BAD_DATA_BUFFER       16
  75. #define  BAD_TEST_PRINT        17
  76. #define  BAD_COMPRESSION       18
  77.  
  78. #define DEFAULT_PAGE_SIZE      PD_SIZE_A
  79.  
  80. /* Function prototypes */
  81.  
  82. int update_status(int cur_status);
  83. void cleanup_and_quit(int exitcode);
  84. void print_usage_message(void);
  85.  
  86. /*
  87. int ioctl(int fildes, int request, ...);
  88. int flock(int fd, int operation);
  89. */
  90.